1. Field of the Invention
The present invention relates to a network, and more particularly to a method for estimating an available bandwidth of a network.
2. Description of the Related Art
Various services requiring a quality of service (‘QoS’) with a predetermined level with respect to a transmission bandwidth, such as VOD (Video On Demand), VoIP (Voice over Internet Protocol) etc., have recently been provided. In order to transmit data according to these services through networks having various characteristics, it is necessary to estimate an available bandwidth of each network.
FIG. 1 is a block diagram illustrating communication apparatuses which are connected to each other through various links having different bandwidths in a network. Communication apparatuses 108 and 110 connected to each other in a network 100 typically communicate with each other via various links 102, 104, and 106 having different bandwidths. In FIG. 1, each of the heights of blocks representing the links 102, 104, and 106 conceptually expresses a size of a bandwidth of each relevant link. Also shown are dotted portions of the links 102, 104, and 106, which represent the respective bandwidths that are currently in use, and the remaining portions of the links 102, 104, and 106 represent the remaining bandwidths that are not in use.
When the communication apparatuses 108 and 110 communicate with each other via links 102, 104, and 106, having different bandwidths from each other, an available bandwidth of a link having the least bandwidth of the links 102, 104, and 106 through which data pass becomes the actual available bandwidth of the network 100 for the communication apparatuses 108 and 110. That is, in the example shown in FIG. 1, an available bandwidth of the link 106 being the least bandwidth of the links 102, 104, and 106 becomes the actual available bandwidth of the network 100 for the communication apparatuses 108 and 110.
According to the conventional techniques of estimating a bandwidth in a network as described above, only an approximate value of bandwidth can be found. According to these techniques, for example, TCP (Transmission Control Protocol)/UDP (User Datagram Protocol) packets are transmitted to a receiving-party communication apparatus 110 through the network 100 for a predetermined period of time. In this case, the packets are transmitted for a predetermined period of time while its transmission bandwidth is saturated with the packets more than the maximum available bandwidth of the network. Thereafter, the number of packets transmitted per unit time and the number of packets received per unit time in the receiving-party communication apparatus 110 are compared with each other, thereby estimating packet loss and an available bandwidth. That is, when a time period of packet transmission is ‘T’ and a size of periodic packets is ‘S’, a bandwidth is determined as ‘S/T’.
However, when such a bandwidth estimation method is used, it is necessary to transmit/receive packets for a long time to increase the estimation accuracy. Therefore, a long time is necessary for estimating an available bandwidth according to the prior art. Moreover, a relevant bandwidth is occupied in a saturated state for the time that available bandwidth estimation is performed. This results in a waste of the network bandwidth.
Furthermore, the prior art method compares the number of packets transmitted per unit time with the number of packets received per unit time at the receiving-party communication apparatus. Thus, this method does not estimate the actual available bandwidth of the network in real time, but is merely an estimate of a momentary average bandwidth at a fixed time.
Hence, there is a need in the industry for a method for estimating network bandwidth that may be performed in substantially real-time and represents an estimate of an actual available bandwidth.